<html>
<head><meta charset="utf-8"><title>proposal: add source file hashes to debuginfo #69718 · t-compiler · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/index.html">t-compiler</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html">proposal: add source file hashes to debuginfo #69718</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="191131105"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191131105" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191131105">(Mar 19 2020 at 15:39)</a>:</h4>
<p>Hey so <span class="user-mention" data-user-id="224872">@Ryan Levick</span> mentioned to me that PR <a href="https://github.com/rust-lang/rust/issues/69718" target="_blank" title="https://github.com/rust-lang/rust/issues/69718">#69718</a> would be really useful for Microsoft folks trying to get Rust building internally. I don't know all the details but I'm keen to enable Microsoft to do more Rust experimentation. </p>
<p>The PR itself adds a compiler flag (presently a <code>-Z</code> flag, but presumably it would eventually become a <code>-C</code> flag) to include a cryptographic hash of the source  files in debug info. This seems like a pretty useful feature -- I'm assuming it's done in some way that's compatible with various C compilers etc but I don't really know (see thoughts on a quick writeup below...)./</p>
<p>I meant to nominate this for the meeting for a brief discussion, but let me raise it here. We don't have a very clear process around "small ad-hoc features" of this kind, though we often add them with an FCP (I just opened <a href="https://github.com/rust-lang/compiler-team/issues/261" target="_blank" title="https://github.com/rust-lang/compiler-team/issues/261">compiler-team#261</a> to track <a class="stream" data-stream-id="185694" href="/#narrow/stream/185694-t-compiler.2Fwg-meta">#t-compiler/wg-meta</a> with drafting a quick policy here). </p>
<p>In any case, the general procedure I think we should do -- and in specific what I want to do here -- is:</p>
<ul>
<li>encourage OP to do a short write-up of what the flag does, link to some of the relevant docs or context (e.g., LLVM docs, or some references to flags from other compilers that this would be compatible with)</li>
<li>create a tracking issue, list the PR authors plus anyone else they name as contact people, and of course link to that write-up</li>
<li>ensure that the PR has user-facing docs for the rustc unstable book and -- if necessary -- encourage rustc-dev-guide entries</li>
<li>fcp merge to land in an unstable state</li>
</ul>
<p>Any thoughts on the abve, particularly with respect to <a href="https://github.com/rust-lang/rust/issues/69718" target="_blank" title="https://github.com/rust-lang/rust/issues/69718">#69718</a>?</p>



<a name="191131256"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191131256" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191131256">(Mar 19 2020 at 15:40)</a>:</h4>
<p>( cc <span class="user-mention" data-user-id="270929">@Arlo Siemsen</span>, the PR author )</p>



<a name="191131890"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191131890" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191131890">(Mar 19 2020 at 15:44)</a>:</h4>
<p>o/</p>



<a name="191131893"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191131893" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191131893">(Mar 19 2020 at 15:44)</a>:</h4>
<p>(The PR itself seems fairly small.)</p>



<a name="191131898"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191131898" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191131898">(Mar 19 2020 at 15:44)</a>:</h4>
<p>I only saw this thread accidentally</p>



<a name="191131903"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191131903" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191131903">(Mar 19 2020 at 15:44)</a>:</h4>
<p>please ping me on all debuginfo stuff :P</p>



<a name="191131985"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191131985" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191131985">(Mar 19 2020 at 15:45)</a>:</h4>
<p>Sorry! You'd have gotten pinged for the FCP, at least :)</p>



<a name="191132031"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191132031" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191132031">(Mar 19 2020 at 15:45)</a>:</h4>
<p>see <a href="https://github.com/rust-lang/rust/issues/68980" target="_blank" title="https://github.com/rust-lang/rust/issues/68980">#68980</a></p>



<a name="191132194"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191132194" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> centril <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191132194">(Mar 19 2020 at 15:46)</a>:</h4>
<p>Questions:</p>
<ul>
<li>What would be the story for e.g., Cranelift here? cc <span class="user-mention" data-user-id="133247">@bjorn3</span></li>
<li>What does this mean for stability? e.g., if internal changes results in a changed checksum, is that breakage, and if so what does that imply for language evolution? (I haven't read the PR in-depth)</li>
</ul>



<a name="191132211"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191132211" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191132211">(Mar 19 2020 at 15:46)</a>:</h4>
<p>One question I might have is whether it makes sense to add this as a flag vs. doing it by default -- I can't imagine a SHA256 hash or w/e would actually take that long (on source code), so probably wouldn't add too much to compile times, even.</p>



<a name="191132259"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191132259" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191132259">(Mar 19 2020 at 15:47)</a>:</h4>
<p><span class="user-mention" data-user-id="126931">@centril</span> it's just giving debuggers something we already have</p>



<a name="191132262"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191132262" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> centril <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191132262">(Mar 19 2020 at 15:47)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116122">simulacrum</span> <a href="#narrow/stream/131828-t-compiler/topic/proposal.3A.20add.20cryptographic.20hashes.20to.20debuginfo.20.2369718/near/191132211" title="#narrow/stream/131828-t-compiler/topic/proposal.3A.20add.20cryptographic.20hashes.20to.20debuginfo.20.2369718/near/191132211">said</a>:</p>
<blockquote>
<p>One question I might have is whether it makes sense to add this as a flag vs. doing it by default -- I can't imagine a SHA256 hash or w/e would actually take that long (on source code), so probably wouldn't add too much to compile times, even.</p>
</blockquote>
<p>Would be good to measure though</p>



<a name="191132278"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191132278" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191132278">(Mar 19 2020 at 15:47)</a>:</h4>
<p>which is the ability to ignore a file if it has changed</p>



<a name="191132300"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191132300" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191132300">(Mar 19 2020 at 15:47)</a>:</h4>
<p>we do the same for cross-crate file loading</p>



<a name="191132335"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191132335" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> bjorn3 <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191132335">(Mar 19 2020 at 15:47)</a>:</h4>
<p>For cg_clif this is an easy addition. I use gimli to emit arbitrary DWARF.</p>



<a name="191132351"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191132351" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191132351">(Mar 19 2020 at 15:47)</a>:</h4>
<p><span aria-label="thumbs up" class="emoji emoji-1f44d" role="img" title="thumbs up">:thumbs_up:</span> from me. That process makes sense to me. The only thing I would add is that we should really be filling out the Rust unstable book as well especially for flags that we expect interested users besides the compiler team to be using. </p>
<p>On a side note, .Net compilers do this with their PDBs and it's very nice because if you forget to build and then try to debug a process, the debugger will immediately highlight that things are weird because the source file doesn't match the code running in the process.</p>



<a name="191132475"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191132475" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> centril <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191132475">(Mar 19 2020 at 15:48)</a>:</h4>
<p>I also think the process itself seems sensible</p>



<a name="191132532"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191132532" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191132532">(Mar 19 2020 at 15:49)</a>:</h4>
<p>I think the Microsoft symbol server stuff might also rely on these signatures but I'm not sure.</p>



<a name="191132595"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191132595" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> centril <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191132595">(Mar 19 2020 at 15:49)</a>:</h4>
<p><span class="user-mention" data-user-id="119009">@eddyb</span> ok so there's no exposure wrt. stability and lang evolution in other words; if so, then I have no concerns</p>



<a name="191133204"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191133204" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191133204">(Mar 19 2020 at 15:53)</a>:</h4>
<p>(One question -- this write-up I describe is really a kind of mini-RFC. I wonder where they should live. Probably asking folks to open a real RFC is bit heavyweight, although I think in principle it would be nice. But storing the write-up in a gist that is linked from the tracking issue feels unsatisfying, as the gist could be deleted etc. They could be stored into the compiler-team repo, or inline on tracking issue, or -- perhaps -- in a section at the end of the rustc-dev-guide? This isn't really blocking the PR per se, but I think it'd be nice to have more of a record of "why was this flag added" that we can find later)</p>



<a name="191133326"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191133326" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> centril <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191133326">(Mar 19 2020 at 15:54)</a>:</h4>
<p>there's also the unstable book as a possible candidate</p>



<a name="191133479"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191133479" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191133479">(Mar 19 2020 at 15:55)</a>:</h4>
<p>I view the unstable book as "end user facing",</p>



<a name="191133506"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191133506" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191133506">(Mar 19 2020 at 15:55)</a>:</h4>
<p>so I expect it to have docs on how to use the feature more than design notes,</p>



<a name="191133518"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191133518" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191133518">(Mar 19 2020 at 15:55)</a>:</h4>
<p>but also when things are stabilized it gets removed...</p>



<a name="191133527"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191133527" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191133527">(Mar 19 2020 at 15:55)</a>:</h4>
<p>but yeah, might be a place to collect them I guess</p>



<a name="191133579"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191133579" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191133579">(Mar 19 2020 at 15:56)</a>:</h4>
<p><span class="user-mention" data-user-id="119009">@eddyb</span> I assigned the PR to you since you seemed "on it"</p>



<a name="191133630"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191133630" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> centril <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191133630">(Mar 19 2020 at 15:56)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> rustc guide is probably the place for internal design notes then</p>



<a name="191133651"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191133651" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191133651">(Mar 19 2020 at 15:56)</a>:</h4>
<p>Yeah, I think so too</p>



<a name="191133663"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191133663" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191133663">(Mar 19 2020 at 15:56)</a>:</h4>
<p>I think we can have a section</p>



<a name="191133675"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191133675" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191133675">(Mar 19 2020 at 15:56)</a>:</h4>
<p>sounds good, left comments on the parts I care about</p>



<a name="191133715"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191133715" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> centril <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191133715">(Mar 19 2020 at 15:57)</a>:</h4>
<p>though the line is blurry; some of that info would probably be useful for end users too</p>



<a name="191133716"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191133716" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191133716">(Mar 19 2020 at 15:57)</a>:</h4>
<p>i.e. the redundancy with <code>src_hash</code></p>



<a name="191133739"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191133739" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191133739">(Mar 19 2020 at 15:57)</a>:</h4>
<p>I'd rather us not hash source files more than once</p>



<a name="191133797"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191133797" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191133797">(Mar 19 2020 at 15:57)</a>:</h4>
<p><span class="user-mention silent" data-user-id="126931">centril</span> <a href="#narrow/stream/131828-t-compiler/topic/proposal.3A.20add.20cryptographic.20hashes.20to.20debuginfo.20.2369718/near/191133715" title="#narrow/stream/131828-t-compiler/topic/proposal.3A.20add.20cryptographic.20hashes.20to.20debuginfo.20.2369718/near/191133715">said</a>:</p>
<blockquote>
<p>though the line is blurry; some of that info would probably be useful for end users too</p>
</blockquote>
<p>my assumption is we'll extract that out into the unstable book</p>



<a name="191133899"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191133899" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191133899">(Mar 19 2020 at 15:58)</a>:</h4>
<p>tbh I don't even know if we need a flag</p>



<a name="191133914"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191133914" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> centril <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191133914">(Mar 19 2020 at 15:58)</a>:</h4>
<p><span aria-label="+1" class="emoji emoji-1f44d" role="img" title="+1">:+1:</span> -- makes sense</p>



<a name="191133978"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191133978" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191133978">(Mar 19 2020 at 15:58)</a>:</h4>
<p>we can just switch src_hash to MD5 and do all of this without an opt-in</p>



<a name="191133990"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191133990" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191133990">(Mar 19 2020 at 15:58)</a>:</h4>
<p><span class="user-mention silent" data-user-id="119009">eddyb</span> <a href="#narrow/stream/131828-t-compiler/topic/proposal.3A.20add.20cryptographic.20hashes.20to.20debuginfo.20.2369718/near/191133899" title="#narrow/stream/131828-t-compiler/topic/proposal.3A.20add.20cryptographic.20hashes.20to.20debuginfo.20.2369718/near/191133899">said</a>:</p>
<blockquote>
<p>tbh I don't even know if we need a flag</p>
</blockquote>
<p>(I'm ok with making it the default if you think that's the right call)</p>



<a name="191134040"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134040" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134040">(Mar 19 2020 at 15:58)</a>:</h4>
<p>DWARF is very extension-friendly so no reasonable tools would break from the extra info being there</p>



<a name="191134059"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134059" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134059">(Mar 19 2020 at 15:59)</a>:</h4>
<p>though I think it doesn't change much process-wise, apart from it being "insta stable"</p>



<a name="191134077"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134077" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134077">(Mar 19 2020 at 15:59)</a>:</h4>
<p>(as in, if you don't recognize a property, you just ignore it)</p>



<a name="191134086"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134086" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> centril <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134086">(Mar 19 2020 at 15:59)</a>:</h4>
<p><span class="user-mention" data-user-id="119009">@eddyb</span> maybe give it a bit of time in nightly before making it the default?</p>



<a name="191134102"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134102" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> centril <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134102">(Mar 19 2020 at 15:59)</a>:</h4>
<p>just to let it bake a bit</p>



<a name="191134128"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134128" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134128">(Mar 19 2020 at 15:59)</a>:</h4>
<p>iow I would still want a short write-up</p>



<a name="191134134"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134134" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134134">(Mar 19 2020 at 15:59)</a>:</h4>
<p>like, IMO this is a bugfix</p>



<a name="191134174"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134174" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134174">(Mar 19 2020 at 15:59)</a>:</h4>
<p>but yeah that'st he other option, add a flag, and then decide later to make it the default</p>



<a name="191134213"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134213" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134213">(Mar 19 2020 at 16:00)</a>:</h4>
<p><span class="user-mention" data-user-id="126931">@centril</span> hmm we could have a flag that toggles whether it's put into the debuginfo but still compute src_hash via MD5</p>



<a name="191134318"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134318" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134318">(Mar 19 2020 at 16:00)</a>:</h4>
<p><span class="user-mention silent" data-user-id="119009">eddyb</span> <a href="#narrow/stream/131828-t-compiler/topic/proposal.3A.20add.20cryptographic.20hashes.20to.20debuginfo.20.2369718/near/191134134" title="#narrow/stream/131828-t-compiler/topic/proposal.3A.20add.20cryptographic.20hashes.20to.20debuginfo.20.2369718/near/191134134">said</a>:</p>
<blockquote>
<p>like, IMO this is a bugfix</p>
</blockquote>
<p>say a bit more?</p>



<a name="191134332"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134332" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134332">(Mar 19 2020 at 16:00)</a>:</h4>
<p>I'll suggest that on the PR</p>



<a name="191134351"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134351" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> centril <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134351">(Mar 19 2020 at 16:00)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> agree; I think this is key; atm it feels like flags are being added a bit left and center and there's no "order"</p>



<a name="191134406"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134406" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134406">(Mar 19 2020 at 16:00)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> as in we could say that it's a bug we weren't emitting hashes</p>



<a name="191134412"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134412" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134412">(Mar 19 2020 at 16:00)</a>:</h4>
<p>I'd like to know why you view it as a bugfix</p>



<a name="191134467"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134467" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134467">(Mar 19 2020 at 16:01)</a>:</h4>
<p>OK. It's not like it's <em>required</em> in some sense</p>



<a name="191134505"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134505" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134505">(Mar 19 2020 at 16:01)</a>:</h4>
<p>but it's a relatively minor bit of extra info to include, you're saying</p>



<a name="191134522"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134522" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134522">(Mar 19 2020 at 16:01)</a>:</h4>
<p>not having it can cause debuggers to show the wrong snippet</p>



<a name="191134557"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134557" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134557">(Mar 19 2020 at 16:01)</a>:</h4>
<p>how so?</p>



<a name="191134578"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134578" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134578">(Mar 19 2020 at 16:01)</a>:</h4>
<p>because they don't realize source file changed?</p>



<a name="191134653"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134653" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134653">(Mar 19 2020 at 16:02)</a>:</h4>
<p>for the reason reason we already hash the source file and don't show snippets in diagnostics if it changed</p>



<a name="191134665"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134665" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134665">(Mar 19 2020 at 16:02)</a>:</h4>
<p>(from when it was compiled, I mean)</p>



<a name="191134678"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191134678" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191134678">(Mar 19 2020 at 16:02)</a>:</h4>
<p>yeah, there is no way to check short of a hash</p>



<a name="191135080"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191135080" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191135080">(Mar 19 2020 at 16:05)</a>:</h4>
<p>OK. I'm starting to see your perspective.</p>



<a name="191135150"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191135150" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191135150">(Mar 19 2020 at 16:05)</a>:</h4>
<p>It does feel like an "externally visible commitment" though</p>



<a name="191135194"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191135194" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191135194">(Mar 19 2020 at 16:05)</a>:</h4>
<p>eh we don't guarantee what's in our debuginfo</p>



<a name="191135292"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191135292" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191135292">(Mar 19 2020 at 16:06)</a>:</h4>
<p>it's always been a best-effort type of thing</p>



<a name="191135320"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191135320" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191135320">(Mar 19 2020 at 16:06)</a>:</h4>
<p>That's true.</p>



<a name="191135355"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191135355" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191135355">(Mar 19 2020 at 16:06)</a>:</h4>
<p>Regardless, I'm fairly persuaded we don't need a flag for it</p>



<a name="191135438"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191135438" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191135438">(Mar 19 2020 at 16:07)</a>:</h4>
<p>The reason I said it's a "kind of" commitment is that I think it's important to MS tooling -- so we wouldn't want to remove it. But that's ok, that's all the more reason to do it of course.</p>



<a name="191135485"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191135485" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191135485">(Mar 19 2020 at 16:07)</a>:</h4>
<p>(I don't really know any details, could be wrong)</p>



<a name="191135505"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191135505" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191135505">(Mar 19 2020 at 16:07)</a>:</h4>
<p>anyway left a comment with the simplified version I had in mind</p>



<a name="191135753"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191135753" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191135753">(Mar 19 2020 at 16:09)</a>:</h4>
<p>I guess the only purpose for the flag would be to help people choose between MD5/SHA1, and you're (I think) saying "MD5 is good enough"</p>



<a name="191135918"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191135918" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191135918">(Mar 19 2020 at 16:10)</a>:</h4>
<p>but also if DWARF doesn't support SHA1... that's kind of bad</p>



<a name="191135974"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191135974" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191135974">(Mar 19 2020 at 16:11)</a>:</h4>
<p>worst case we always compute both and use the best one supported, unless it's a perf drawback</p>



<a name="191136008"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191136008" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191136008">(Mar 19 2020 at 16:11)</a>:</h4>
<p>or we make the target spec choose</p>



<a name="191136190"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191136190" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191136190">(Mar 19 2020 at 16:13)</a>:</h4>
<p>hey <span class="user-mention" data-user-id="116009">@nikomatsakis</span> , why wouldn't we use the major change proposal for this process?</p>



<a name="191136204"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191136204" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191136204">(Mar 19 2020 at 16:13)</a>:</h4>
<p>is that too heavyweight?</p>



<a name="191136223"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191136223" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191136223">(Mar 19 2020 at 16:13)</a>:</h4>
<p>I was wondering that</p>



<a name="191136273"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191136273" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191136273">(Mar 19 2020 at 16:13)</a>:</h4>
<p>that reminds me that <span class="user-mention" data-user-id="116266">@Santiago Pastorino</span> and I kind of sketched out some details and started an RFC for that</p>



<a name="191136280"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191136280" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191136280">(Mar 19 2020 at 16:13)</a>:</h4>
<p>but we didn't quite finish it</p>



<a name="191136284"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191136284" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> centril <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191136284">(Mar 19 2020 at 16:13)</a>:</h4>
<p>isn't major change primarily about well... a major change to the codebase?</p>



<a name="191136288"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191136288" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191136288">(Mar 19 2020 at 16:13)</a>:</h4>
<p>it might be a good choice indeed</p>



<a name="191136306"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191136306" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191136306">(Mar 19 2020 at 16:13)</a>:</h4>
<p>it is in some sense a bit <em>lightweight</em></p>



<a name="191136314"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191136314" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> centril <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191136314">(Mar 19 2020 at 16:13)</a>:</h4>
<p>as opposed to e.g., a feature that isn't very invasive codebase wise</p>



<a name="191136315"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191136315" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191136315">(Mar 19 2020 at 16:13)</a>:</h4>
<p>in that we didn't require a full FCP</p>



<a name="191136317"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191136317" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191136317">(Mar 19 2020 at 16:14)</a>:</h4>
<p>I think in some ways, having a smaller number of processes, even if some are not perfect fits, is better than a plethora of processes to choose from</p>



<a name="191136359"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191136359" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191136359">(Mar 19 2020 at 16:14)</a>:</h4>
<p>but then again</p>



<a name="191136370"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191136370" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191136370">(Mar 19 2020 at 16:14)</a>:</h4>
<p>as long as the compiler flag is untsable, that's probably fine</p>



<a name="191136385"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191136385" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191136385">(Mar 19 2020 at 16:14)</a>:</h4>
<p>I would only want a full FCP for something irreversible</p>



<a name="191136398"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191136398" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191136398">(Mar 19 2020 at 16:14)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116083">pnkfelix</span> <a href="#narrow/stream/131828-t-compiler/topic/proposal.3A.20add.20cryptographic.20hashes.20to.20debuginfo.20.2369718/near/191136317" title="#narrow/stream/131828-t-compiler/topic/proposal.3A.20add.20cryptographic.20hashes.20to.20debuginfo.20.2369718/near/191136317">said</a>:</p>
<blockquote>
<p>I think in some ways, having a smaller number of processes, even if some are not perfect fits, is better than a plethora of processes to choose from</p>
</blockquote>
<p>agreed</p>



<a name="191136437"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191136437" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> centril <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191136437">(Mar 19 2020 at 16:14)</a>:</h4>
<p>at least when I think of major change proposals I think of "changes to architecture"</p>



<a name="191136454"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191136454" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191136454">(Mar 19 2020 at 16:14)</a>:</h4>
<p>it just requires extending the definition of "major change" to include "adding a new compiler flag" :)</p>



<a name="191136509"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191136509" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> centril <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191136509">(Mar 19 2020 at 16:15)</a>:</h4>
<p>heh <span aria-label="slight smile" class="emoji emoji-1f642" role="img" title="slight smile">:slight_smile:</span></p>



<a name="191137742"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191137742" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191137742">(Mar 19 2020 at 16:24)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116009">nikomatsakis</span> <a href="#narrow/stream/131828-t-compiler/topic/proposal.3A.20add.20cryptographic.20hashes.20to.20debuginfo.20.2369718/near/191136273" title="#narrow/stream/131828-t-compiler/topic/proposal.3A.20add.20cryptographic.20hashes.20to.20debuginfo.20.2369718/near/191136273">said</a>:</p>
<blockquote>
<p>that reminds me that <span class="user-mention silent" data-user-id="116266">Santiago Pastorino</span> and I kind of sketched out some details and started an RFC for that</p>
</blockquote>
<p>did I? :P</p>



<a name="191137836"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191137836" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191137836">(Mar 19 2020 at 16:24)</a>:</h4>
<p>ahh now read it, about the major changes proposal, ok ok</p>



<a name="191158736"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191158736" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Arlo Siemsen <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191158736">(Mar 19 2020 at 18:48)</a>:</h4>
<p>I have a short write up about the feature. <a href="https://gist.github.com/arlosi/27162cfbd4bfc9bfabc25bfbe4777160" target="_blank" title="https://gist.github.com/arlosi/27162cfbd4bfc9bfabc25bfbe4777160">https://gist.github.com/arlosi/27162cfbd4bfc9bfabc25bfbe4777160</a><br>
Is the next step for this to create a PR to add it to the rustc guide? Should be in the rustc guide before it is implemented?</p>



<a name="191159548"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191159548" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191159548">(Mar 19 2020 at 18:55)</a>:</h4>
<p>I'd say to go ahead and open the PR for the rustc guide even if the implementation hasn't landed yet. We can wait to merge the rustc guide pr until the implementation is merged.</p>



<a name="191167100"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191167100" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Arlo Siemsen <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191167100">(Mar 19 2020 at 19:57)</a>:</h4>
<p>PR is up <a href="https://github.com/rust-lang/rustc-dev-guide/pull/623" target="_blank" title="https://github.com/rust-lang/rustc-dev-guide/pull/623">https://github.com/rust-lang/rustc-dev-guide/pull/623</a></p>



<a name="191637720"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191637720" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191637720">(Mar 24 2020 at 16:34)</a>:</h4>
<p><span class="user-mention" data-user-id="270929">@Arlo Siemsen</span> thanks for the write-up! That's great</p>



<a name="191637868"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191637868" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Arlo Siemsen <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191637868">(Mar 24 2020 at 16:35)</a>:</h4>
<p>Glad it helps. Let me know if there's more we need to add. Since we're looking at making it a target option (rather than a compiler option), should I still open a tracking issue?</p>



<a name="191637891"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191637891" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191637891">(Mar 24 2020 at 16:36)</a>:</h4>
<p><span class="user-mention" data-user-id="119009">@eddyb</span> convinced me that this is a relatively small change,</p>



<a name="191637957"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191637957" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191637957">(Mar 24 2020 at 16:36)</a>:</h4>
<p>but reading your write-up did make me wonder exactly how it should be exposed</p>



<a name="191638018"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191638018" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191638018">(Mar 24 2020 at 16:36)</a>:</h4>
<p>in particular, just always doing MD5 (like clang) is I guess not recommended</p>



<a name="191638039"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191638039" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191638039">(Mar 24 2020 at 16:37)</a>:</h4>
<p>I guess a target option seems fine, are those "insta stable"?</p>



<a name="191638075"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191638075" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191638075">(Mar 24 2020 at 16:37)</a>:</h4>
<p>I guess they probably are, I'm not sure that we have a notion of a "nightly only" target option.</p>



<a name="191638088"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191638088" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Arlo Siemsen <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191638088">(Mar 24 2020 at 16:37)</a>:</h4>
<p>Yes, I think that would make it insta stable.</p>



<a name="191638144"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191638144" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191638144">(Mar 24 2020 at 16:37)</a>:</h4>
<p>I guess I think "target option" makes sense if -- on the various targets -- there is an obvious "correct choice" based on the surrounding tooling</p>



<a name="191638224"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191638224" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191638224">(Mar 24 2020 at 16:38)</a>:</h4>
<p>it seems like most people just won't care what kind of hash is used</p>



<a name="191638238"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191638238" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191638238">(Mar 24 2020 at 16:38)</a>:</h4>
<p>as long as their debugger supports it</p>



<a name="191638285"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191638285" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Arlo Siemsen <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191638285">(Mar 24 2020 at 16:38)</a>:</h4>
<p>We really want to use SHA256 for PDBs, however the support for SHA256 isn't available until LLVM 11.</p>



<a name="191638337"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191638337" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Arlo Siemsen <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191638337">(Mar 24 2020 at 16:38)</a>:</h4>
<p>I agree, most people are going to be fine with anything supported by the debugger.</p>



<a name="191638401"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191638401" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Arlo Siemsen <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191638401">(Mar 24 2020 at 16:39)</a>:</h4>
<p>The thought with making it a target option was to choose the best hash available for the given target.</p>



<a name="191638801"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191638801" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191638801">(Mar 24 2020 at 16:41)</a>:</h4>
<p>OK. I could see an argument for including both, even. i.e., have the target info supply the default, but give the ability to override.</p>



<a name="191638875"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191638875" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191638875">(Mar 24 2020 at 16:42)</a>:</h4>
<p>That seems like it'd be easy enough to do?</p>



<a name="191638918"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191638918" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191638918">(Mar 24 2020 at 16:42)</a>:</h4>
<p>But I guess the question is whether people would ever <em>actually</em> want to override. I'm fine with just doing target info to start.</p>



<a name="191638959"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191638959" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Arlo Siemsen <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191638959">(Mar 24 2020 at 16:42)</a>:</h4>
<p>Yes, I think that would be easy enough. I'm not sure people would want to override it.</p>



<a name="191639030"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191639030" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191639030">(Mar 24 2020 at 16:43)</a>:</h4>
<p>That's an irreversible decision, though, so I think it'd be great to add just a note or two about in the write-up, and we can do a quick FCP.</p>



<a name="191639054"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191639054" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191639054">(Mar 24 2020 at 16:43)</a>:</h4>
<p>I'll nominate it also for discussion in the meeting.</p>



<a name="191639100"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191639100" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Arlo Siemsen <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191639100">(Mar 24 2020 at 16:43)</a>:</h4>
<p>Sounds good. I can add it to the write up PR.</p>



<a name="191639107"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191639107" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191639107">(Mar 24 2020 at 16:44)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116009">nikomatsakis</span> <a href="#narrow/stream/131828-t-compiler/topic/proposal.3A.20add.20cryptographic.20hashes.20to.20debuginfo.20.2369718/near/191639030" title="#narrow/stream/131828-t-compiler/topic/proposal.3A.20add.20cryptographic.20hashes.20to.20debuginfo.20.2369718/near/191639030">said</a>:</p>
<blockquote>
<p>That's an irreversible decision, though, so I think it'd be great to add just a note or two about in the write-up, and we can do a quick FCP.</p>
</blockquote>
<p>is it? I could be wrong, but I'm assuming people can make their own target options.</p>



<a name="191639153"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191639153" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191639153">(Mar 24 2020 at 16:44)</a>:</h4>
<p>Thanks!</p>



<a name="191639171"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191639171" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191639171">(Mar 24 2020 at 16:44)</a>:</h4>
<p>Ping me when it's done and I'll go kick off the FCP</p>



<a name="191639218"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191639218" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Arlo Siemsen <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191639218">(Mar 24 2020 at 16:44)</a>:</h4>
<p>Yes, I think you can create your own target file via JSON.</p>



<a name="191639814"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191639814" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191639814">(Mar 24 2020 at 16:48)</a>:</h4>
<p><a href="https://doc.rust-lang.org/rustc/targets/custom.html" target="_blank" title="https://doc.rust-lang.org/rustc/targets/custom.html">https://doc.rust-lang.org/rustc/targets/custom.html</a></p>



<a name="191643005"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191643005" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191643005">(Mar 24 2020 at 17:11)</a>:</h4>
<p>can we avoid stabilization by making it not parse from JSON?</p>



<a name="191643023"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191643023" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191643023">(Mar 24 2020 at 17:11)</a>:</h4>
<p>so it's internal-only?</p>



<a name="191643047"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191643047" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191643047">(Mar 24 2020 at 17:11)</a>:</h4>
<p>(I guess that could mean we can just have a method that returns the best supported hash format)</p>



<a name="191643075"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191643075" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191643075">(Mar 24 2020 at 17:11)</a>:</h4>
<p>(and not let the target spec control it)</p>



<a name="191643646"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191643646" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Arlo Siemsen <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191643646">(Mar 24 2020 at 17:16)</a>:</h4>
<p>If we make it a real target option, it has to be parsed through JSON, since even the hard-coded targets round-trip through JSON.</p>



<a name="191643685"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191643685" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191643685">(Mar 24 2020 at 17:16)</a>:</h4>
<p>I guess that's an insurance policy against target spec bugs</p>



<a name="191643877"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191643877" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Arlo Siemsen <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191643877">(Mar 24 2020 at 17:18)</a>:</h4>
<p>To avoid stabilization, we could key off <code>is_like_msvc</code>in the target I suppose.</p>



<a name="191643925"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191643925" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191643925">(Mar 24 2020 at 17:18)</a>:</h4>
<p>that's the only situation in which we emit PDBs, right?</p>



<a name="191643967"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191643967" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191643967">(Mar 24 2020 at 17:18)</a>:</h4>
<p>what does LLVM even do if you give it e.g. SHA1 for a DWARF target?</p>



<a name="191643981"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191643981" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Arlo Siemsen <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191643981">(Mar 24 2020 at 17:18)</a>:</h4>
<p>It drops it.</p>



<a name="191643994"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191643994" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Arlo Siemsen <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191643994">(Mar 24 2020 at 17:19)</a>:</h4>
<p>And you get no hash.</p>



<a name="191644014"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191644014" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191644014">(Mar 24 2020 at 17:19)</a>:</h4>
<p>yikes</p>



<a name="191644072"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191644072" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Arlo Siemsen <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191644072">(Mar 24 2020 at 17:19)</a>:</h4>
<p>I think MSVC is the only place we emit PDBs.</p>



<a name="191644106"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191644106" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191644106">(Mar 24 2020 at 17:19)</a>:</h4>
<p>I bet there's no way to check through LLVM's API whether a hash is supported on a target</p>



<a name="191644215"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191644215" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Arlo Siemsen <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191644215">(Mar 24 2020 at 17:20)</a>:</h4>
<p>Not that I know of.</p>



<a name="191644292"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191644292" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191644292">(Mar 24 2020 at 17:20)</a>:</h4>
<p>anyway, yeah, <code>is_like_msvc</code> could be okay for now if we don't want to add an insta-stable option name</p>



<a name="191644346"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191644346" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Arlo Siemsen <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191644346">(Mar 24 2020 at 17:20)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> I updated <a href="https://github.com/rust-lang/rustc-dev-guide/pull/623" target="_blank" title="https://github.com/rust-lang/rustc-dev-guide/pull/623">https://github.com/rust-lang/rustc-dev-guide/pull/623</a></p>



<a name="191649102"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191649102" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191649102">(Mar 24 2020 at 17:53)</a>:</h4>
<p>Heh so I think it'd be fine to just start emitting hashes always using our own "best judgement" about when to do so</p>



<a name="191650080"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191650080" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191650080">(Mar 24 2020 at 18:00)</a>:</h4>
<p>OK, so, current plan is to just pick a default and add a <code>-Z</code> flag?</p>



<a name="191650084"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191650084" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191650084">(Mar 24 2020 at 18:00)</a>:</h4>
<p>seems ok to me</p>



<a name="191650227"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191650227" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191650227">(Mar 24 2020 at 18:01)</a>:</h4>
<p>I'd prob go w/ the original plan of making a stabilization issue and note down the options we considered. I don't care so much whether we use MCP or FCP, although technically there is a "user facing" change (we're adding the basic feature of including hashing in debuginfo), but I think it's a pretty minor thing and if people are <em>really</em> concerned we have plenty of time before stable.</p>



<a name="191650255"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191650255" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191650255">(Mar 24 2020 at 18:01)</a>:</h4>
<p>So just mentioning it in the meeting probably suffices</p>



<a name="191650344"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191650344" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191650344">(Mar 24 2020 at 18:02)</a>:</h4>
<p>I imagine sometime later if we ever get requests to customize per platform or to expose the flag we can figure out later the best way to do it</p>



<a name="191650348"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191650348" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191650348">(Mar 24 2020 at 18:02)</a>:</h4>
<p>probably we never will</p>



<a name="191653035"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/191653035" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Arlo Siemsen <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#191653035">(Mar 24 2020 at 18:24)</a>:</h4>
<p>Ok, to avoid insta-stabilizing anything, I'll update the PR to:</p>
<ul>
<li>Use the existing <code>is_like_msvc</code> target option to set the default hash algorithm instead of adding a new target option.</li>
<li>Add back the <code>-Z</code> flag to allow overriding the hash algorithm.</li>
</ul>



<a name="192293669"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/192293669" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#192293669">(Mar 30 2020 at 17:56)</a>:</h4>
<p><span class="user-mention" data-user-id="270929">@Arlo Siemsen</span> sorry I didn't take a look at the PR earlier, I put it off for a day or two and then it ended up on the second page of GH notifications :(</p>



<a name="192293804"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/192293804" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#192293804">(Mar 30 2020 at 17:57)</a>:</h4>
<p>I need to start unwatching PRs that I don't need to be involved in, just so it's easier to keep track of the ones where I should be involved</p>



<a name="192426468"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/192426468" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Arlo Siemsen <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#192426468">(Mar 31 2020 at 17:59)</a>:</h4>
<p>No problem. I re-merged the PR and squashed all the commits. Let me know if there's anything else we need.</p>



<a name="192965611"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/192965611" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#192965611">(Apr 05 2020 at 15:58)</a>:</h4>
<p>(I had the hubris to try and rename the topic but Zulip is fighting me, this is an attempt to move the two messages before my first message in the topic)</p>



<a name="192965716"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/192965716" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#192965716">(Apr 05 2020 at 16:00)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> so it looks like "move previous and following messages to this topic" doesn't move other people's messages, this means you'd have to move your own messages to "proposal: add source file hashes to debuginfo <a href="https://github.com/rust-lang/rust/issues/69718" title="https://github.com/rust-lang/rust/issues/69718">#69718</a>" :(</p>



<a name="192965730"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/192965730" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#192965730">(Apr 05 2020 at 16:01)</a>:</h4>
<p><span class="user-mention" data-user-id="270929">@Arlo Siemsen</span> that fix was really prompt, thanks a lot!</p>



<a name="192965789"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/192965789" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#192965789">(Apr 05 2020 at 16:02)</a>:</h4>
<p>this just shows we should perf-test more PRs, perhaps after making the perf testing server more capable (or starting to distribute it across 2-3 servers)</p>



<a name="192965822"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/192965822" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#192965822">(Apr 05 2020 at 16:03)</a>:</h4>
<p><span class="user-mention" data-user-id="270929">@Arlo Siemsen</span> I posted 3 comparisons here which show the fix, the overall effect and the PRs landed in between the original PR and the fix (the latter two both seem negligible) <a href="https://github.com/rust-lang/rust/issues/70785#issuecomment-609438109" title="https://github.com/rust-lang/rust/issues/70785#issuecomment-609438109">https://github.com/rust-lang/rust/issues/70785#issuecomment-609438109</a></p>



<a name="192965895"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/192965895" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#192965895">(Apr 05 2020 at 16:05)</a>:</h4>
<p><span class="user-mention" data-user-id="270929">@Arlo Siemsen</span> if you want to help test the SHA1 performance compared to MD5, you could make a PR that changes the default (which we'd not actually land) and we could test that. the perf stuff is all on linux but if we make linux do SHA1 hashing it should be indicative of what is now happening on windows</p>



<a name="194723021"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/194723021" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#194723021">(Apr 20 2020 at 19:41)</a>:</h4>
<p>/msg <span class="user-mention" data-user-id="119009">@eddyb</span> what was the original topic for <a href="#narrow/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718/near/192965716" title="#narrow/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718/near/192965716">"proposal: add source file hashes to debuginfo #69718"</a>? Your statement that "move previous and following... " doesn't move other people's message does not match my own recollection of what I'd observed myself...</p>



<a name="194723045"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/194723045" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#194723045">(Apr 20 2020 at 19:41)</a>:</h4>
<p>argh <code>/msg</code> is not a thing in zulip; <em>that</em> seems like something they could fix...</p>



<a name="194723186"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/194723186" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#194723186">(Apr 20 2020 at 19:42)</a>:</h4>
<p><span class="user-mention" data-user-id="116083">@pnkfelix</span> "cryptographic" in lieu of "source file"</p>



<a name="194723218"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/194723218" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#194723218">(Apr 20 2020 at 19:43)</a>:</h4>
<p><a href="#narrow/stream/131828-t-compiler/topic/proposal.3A.20add.20cryptographic.20hashes.20to.20debuginfo.20.2369718/near/191131256" title="#narrow/stream/131828-t-compiler/topic/proposal.3A.20add.20cryptographic.20hashes.20to.20debuginfo.20.2369718/near/191131256">https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/proposal.3A.20add.20cryptographic.20hashes.20to.20debuginfo.20.2369718/near/191131256</a></p>



<a name="194723770"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/194723770" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#194723770">(Apr 20 2020 at 19:48)</a>:</h4>
<p>Okay well I think <em>I</em> was able to revise other peoples' titles (observe this topic itself, in particular)</p>



<a name="194723787"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/194723787" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#194723787">(Apr 20 2020 at 19:48)</a>:</h4>
<p>but that might because I have admin privileges perhaps?</p>



<a name="194729085"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/194729085" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#194729085">(Apr 20 2020 at 20:33)</a>:</h4>
<p>the weird thing is that the option shows up for me too, except... oh right it's that timed thing</p>



<a name="194729169"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/194729169" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#194729169">(Apr 20 2020 at 20:34)</a>:</h4>
<p>so maybe because I can't edit topics on other people's messages after a while, the before+after feature is also affected</p>



<a name="194729242"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/194729242" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#194729242">(Apr 20 2020 at 20:34)</a>:</h4>
<p>whereas the usual "move this message and all after" does affect all messages</p>



<a name="194730823"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/194730823" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#194730823">(Apr 20 2020 at 20:46)</a>:</h4>
<p>but if its a timing thing, then why let me do it as an admin right now?</p>



<a name="194730846"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/194730846" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#194730846">(Apr 20 2020 at 20:46)</a>:</h4>
<p>(because I just <em>did</em> move all the messages over into this very topic...)</p>



<a name="194731697"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/194731697" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#194731697">(Apr 20 2020 at 20:52)</a>:</h4>
<p>everyone should be able to do it</p>



<a name="194731713"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/proposal%3A%20add%20source%20file%20hashes%20to%20debuginfo%20%2369718/near/194731713" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/proposal.3A.20add.20source.20file.20hashes.20to.20debuginfo.20.2369718.html#194731713">(Apr 20 2020 at 20:52)</a>:</h4>
<p>you may need to start on your own message? not sure</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>